MongoDB ডকুমেন্ট-ভিত্তিক ডেটাবেস হওয়ায়, ডেটা ডকুমেন্ট আকারে সংরক্ষিত থাকে এবং সেগুলি পরিচালনার জন্য বেশ কিছু কমান্ড সরবরাহ করা হয়। MongoDB তে ডকুমেন্ট ইনসার্ট এবং আপডেট করার জন্য insertMany এবং updateMany এর মতো অপারেশন ব্যবহার করা হয়। এগুলি ব্যবহার করে আপনি একাধিক ডকুমেন্ট ইনসার্ট বা আপডেট করতে পারেন।
1. InsertMany (একাধিক ডকুমেন্ট ইনসার্ট করা)
MongoDB তে একাধিক ডকুমেন্ট একসাথে ইনসার্ট করতে insertMany() ফাংশন ব্যবহার করা হয়। এটি একটি কালেকশনে একাধিক ডকুমেন্ট যোগ করতে সহায়তা করে।
Syntax:
db.collection.insertMany([<document1>, <document2>, ...])
উদাহরণ:
একটি কালেকশনে একাধিক ডকুমেন্ট ইনসার্ট করার উদাহরণ:
db.users.insertMany([
{ name: "John", age: 30, city: "New York" },
{ name: "Jane", age: 25, city: "San Francisco" },
{ name: "Alice", age: 28, city: "Chicago" }
])
এই কমান্ডটি users কালেকশনে তিনটি ডকুমেন্ট ইনসার্ট করবে।
insertMany এর বৈশিষ্ট্য:
- একাধিক ডকুমেন্ট ইনসার্ট করার মাধ্যমে পারফরম্যান্স বৃদ্ধি পায়।
- ডকুমেন্টের মধ্যে পৃথক পৃথক কীগুলি থাকতে পারে, MongoDB স্কিমা-লেস হওয়ায় এটি সাপোর্ট করে।
- ইনসার্ট করার সময় যদি কোনো ভুল হয়, তবে পুরো অপারেশনটি ব্যর্থ হয়ে যাবে, তবে আপনি
ordered: falseদিয়ে অর্ডার বিবেচনা না করেও ইনসার্ট করতে পারবেন।
ordered: false এর উদাহরণ:
db.users.insertMany([
{ name: "Bob", age: 35, city: "Seattle" },
{ name: "Charlie", age: 40, city: "Los Angeles" }
], { ordered: false })
এখানে, যদি কোন একটি ডকুমেন্ট ইনসার্ট না হয়, তাহলে বাকি ডকুমেন্টগুলি ইনসার্ট হবে।
2. UpdateMany (একাধিক ডকুমেন্ট আপডেট করা)
MongoDB তে একাধিক ডকুমেন্ট আপডেট করতে updateMany() ফাংশন ব্যবহার করা হয়। এটি একটি নির্দিষ্ট শর্ত অনুযায়ী একাধিক ডকুমেন্ট আপডেট করে।
Syntax:
db.collection.updateMany(
<filter>,
<update>,
<options>
)
- filter: যে ডকুমেন্টগুলো আপডেট হবে, তাদের শর্ত নির্ধারণ করে।
- update: কিভাবে ডকুমেন্ট আপডেট হবে তার নির্দেশনা।
- options: অতিরিক্ত অপশন যেমন
upsert(যদি ডকুমেন্ট না থাকে, তবে নতুন ডকুমেন্ট ইনসার্ট করা হবে)।
উদাহরণ:
যেমন, যদি আপনি age 30 এর কম সকল ব্যবহারকারীর status ফিল্ড আপডেট করতে চান:
db.users.updateMany(
{ age: { $lt: 30 } },
{ $set: { status: "Young" } }
)
এখানে, age 30 এর কম যেসব ব্যবহারকারী আছে, তাদের status ফিল্ডের মান "Young" হবে।
UpdateMany এর বৈশিষ্ট্য:
updateMany()একাধিক ডকুমেন্ট আপডেট করতে ব্যবহৃত হয় এবং এটি কুয়েরির মাধ্যমে নির্ধারিত শর্ত অনুযায়ী ডকুমেন্টগুলো আপডেট করে।updateMany()ফাংশন শুধুমাত্র আপডেট করে, কোনো ডকুমেন্ট না পাওয়া গেলে কিছু পরিবর্তন হয় না।- আপনি
$set,$inc,$pushইত্যাদি অপারেটর ব্যবহার করতে পারেন আপডেট অপারেশন আরও নিয়ন্ত্রিত করার জন্য।
$set অপারেটর উদাহরণ:
db.users.updateMany(
{ city: "New York" },
{ $set: { city: "Los Angeles" } }
)
এখানে, city ফিল্ডের মান "New York" থেকে "Los Angeles" এ আপডেট হবে।
$inc অপারেটর উদাহরণ:
আপনি যদি কাউন্ট বা বয়স বৃদ্ধি করতে চান:
db.users.updateMany(
{ age: { $lt: 35 } },
{ $inc: { age: 1 } }
)
এটি 35 এর নিচে বয়স থাকা সকল ব্যবহারকারীর বয়স 1 বাড়িয়ে দেবে।
সারাংশ
MongoDB তে ডকুমেন্ট পরিচালনার জন্য insertMany এবং updateMany কমান্ড দুটি খুবই গুরুত্বপূর্ণ। insertMany() একাধিক ডকুমেন্ট ইনসার্ট করতে সাহায্য করে, যা বড় ডেটা সন্নিবেশে কার্যকরী। আর updateMany() ফাংশনটি একাধিক ডকুমেন্ট আপডেট করতে ব্যবহৃত হয়, যা নির্দিষ্ট শর্ত অনুসারে ডেটা পরিবর্তন করতে সহায়ক। MongoDB তে এই দুটি অপারেশন ব্যবহারের মাধ্যমে আপনি ডেটাবেসে বৃহৎ পরিসরে কার্যক্রম পরিচালনা করতে সক্ষম হবেন।
Read more